Test::Run Update

Shlomi Fish on 2007-02-24T17:37:01

This Melbourne.PM post piqued my interest to test doing exactly that using Test::Run's runprove and it surprisingly failed. As it turned out it was a bug with runprove (and not Test::Run itself) which I fixed. While I was in the neighbourhood, I decided to work a bit more on Test::Run.

After I installed the latest TAPx::Parser, I ran into a regression which I reported. Apparently, the behaviour in the trunk has diverted from the more traditional (but according to Ovid - wrong) Test::Harness semantics. Now, I'll need to wait until a new stable version of TAPx::Parser is on CPAN, and adapt the tests, while requiring only that version or upwards. Oh well.

Next I worked on a plugin that allows specifying alternate interpreters to test scripts. However, it already accepts regular expressions as conditions, and can be extended to accept more sophisticated ones. Writing this plugin required a small refactoring of the code. I did not put this plugin on the CPAN yet, because I haven't written the Test::Run::CmdLine frontend for it yet.

Writing this plugin required writing some simple TAP-emitting interpreters for it in Perl, which was fun.

I also fixed some bugs in the core that were discovered in the course of testing. Two of them involved adding an empty "PL_FILES" key to Makefile.PL, so ExtUtils::MakeMaker won't invoke Build.PL, and fixed the number of skipped tests in a script I inherited from Test::Harness due to a failed report on perl-5.6.2.

Next on my short-term plans is to finish the configurable interpreters plugin. Then I think I'll work on a statistics' collecting plugin, and an XML report one.